

from rest_framework import serializers

# 权限的模型类Permission
from django.contrib.auth.models import Permission,ContentType


class ContentTypeSerializer(serializers.ModelSerializer):
    class Meta:
        model = ContentType
        fields = [
            'id',
            'name'
        ]



class PermModelSerializer(serializers.ModelSerializer):

    # 重写类型，该字段序列化结果为权限类型名称
    # 注释掉的原因：
    # 1、反序列化新建权限的时候，设置的权限类型前端会传递主表的id，需要参与反序列化
    # 2、无需把当前字段序列化为类型名称(前端不需要)
    # content_type = serializers.StringRelatedField()

    class Meta:
        model = Permission
        fields = [
            'id',
            'name',
            'codename',
            'content_type'
        ]